หากทำ EC2 Windows Key pair หายไป และลืม Administrator Password ของ Windows Server ควรทำอย่างไร? – บทความนี้มีคำตอบ
สวัสดีครับ POP จากบริษัท Classmethod (Thailand) ครับ
ครั้งนี้ผมจะมาแนะนำวิธีแก้หากทำ EC2 Windows Key pair หายไป และลืม Administrator Password ของ Windows Server
ปัญหาดังกล่าวมีคำอธิบายที่ลิงก์ด้านล่างนี้ แต่เป็นวิธีสร้าง Instance อื่นและกู้คืนรหัสผ่าน
แต่วิธีที่จะแนะนำดังต่อไปนี้เป็นวิธีที่สามารถใช้ในกรณีที่ต้องการเปลี่ยนเฉพาะรหัสผ่านโดยใช้ Instance เดิมได้
สิ่งที่ต้องมี
- มี Microsoft Windows Server ใน Amazon EC2 แล้ว
- EC2 Windows ต้องอยู่ในระหว่างเปิดใช้งาน (Running) ถ้า Stop อยู่ ให้ทำการ Start
สำหรับผู้ใช้งานที่ยังไม่ได้สร้าง Microsoft Windows Server ดูวิธีการที่ลิงก์ด้านล่างนี้ได้เลย
ปัญหา
- สมมติว่าลบ Key pair ของ Windows Server ที่กำลังใช้งานอยู่โดยไม่ได้ตั้งใจ
- สมมติว่าลืม Administrator Password ของ Windows Server
หากเราทำ EC2 Windows Key pair หายไป และลืม Administrator Password ของ Windows Server ก็จะไม่สามารถ Login เข้าใช้งาน Windows Server ได้
เนื่องจากถ้าเราไม่มี EC2 Windows Key pair เราจะไม่สามารถถอดรหัส (Decrypt password) ใน EC2 Windows ได้
แต่เราสามารถแก้ไขปัญหานี้ได้ง่ายๆ โดยใช้ Service AWS Systems Manager ในการ Reset Administrator Password ! ถ้าพร้อมแล้วไปเริ่มกันเลย
การสร้าง Role ใน IAM
เข้ามาที่ Service IAM โดยค้นหา ?︎ IAM
แล้วเลือก IAM
Step 1 - Select trusted entity:
Trusted entity type
» เลือก AWS service
Use case
» เลือก ◉ EC2
» คลิก Next
Step 2 - Add permissions:
» ค้นหา Permissions policies: AmazonSSMManagedInstanceCore
» ติ๊ก ✅
AmazonSSMManagedInstanceCore
» คลิก Next
Step 3 - Name, review, and create:
» Name: tinnakorn-test-win-role
(ชื่ออะไรก็ได้)
เลื่อนลงมาด้านล่างสุด คลิก Create role
การเพิ่ม Role ใน EC2 Windows
เราจะทำการเพิ่ม Role ใน EC2 Windows เพื่ออนุญาตสิทธิ์ AmazonSSMManagedInstanceCore ให้กับ EC2 Windows นี้
เข้ามาที่หน้า Instance ของเรา แล้วเลือก Actions ▼
> Security
> Modify IAM role
ค้นหาและเลือก IAM role ที่สร้างจากขั้นตอนที่แล้ว เช่น tinnakorn-test-win-role
แล้วคลิก Update IAM role
เข้ามาที่หน้า Instance ของเราอีกครั้ง แล้วดูที่ IAM Role จะเห็นว่าถูกเพิ่มขึ้นมาแล้ว
แล้วคัดลอก Instance ID เตรียมไว้ใช้ในขั้นตอนถัดไป ซึ่งจะอธิบายภายหลัง
การ Run Command ใน Systems Manager
เข้ามาที่ Service AWS Systems Manager โดยค้นหา ?︎ Systems Manager
แล้วเลือก Systems Manager
เลือก Run Command
จากเมนูด้านซ้าย
หัวข้อ Command document:
ค้นหา ?︎ AWS-UpdateSSMAgent
แล้วคลิก ◎ AWS-UpdateSSMAgent
หัวข้อ Target selection:
» เลือก ◎ Choose instances manually
» ค้นหา Instances ID ของเรา ?︎ i-*****************
» Check ✅ i-*****************
ที่ Instance ID ของเรา
หัวข้อ Output options:
ให้ Uncheck ☐ Enable an S3 bucket
ออก แล้วเลื่อนลงมาด้านล่างสุด และคลิกปุ่ม Run
เมื่อมาหน้านี้แล้วให้รอสักครู่
กดปุ่ม Refresh
ถ้าขึ้น Success การตั้งค่านี้ก็เสร็จสมบูรณ์
การ Run Command ผ่าน PowerShell Script ใน Systems Manager
ในขั้นตอนนี้เป็นตัวอย่างการรันคำสั่ง "Reset Administrator Password สำหรับ Windows Server"
เลือก Run Command
จากเมนูด้านซ้าย
หัวข้อ Command document:
ค้นหา ?︎ AWS-RunPowerShellScript
แล้วคลิก ◎ AWS-RunPowerShellScript
หัวข้อ Command parameters:
ใส่คำสั่งตามด้านล่างนี้และเปลี่ยน P@ssW0rd
ให้เป็นรหัสผ่านที่ต้องการ
* รหัสผ่านนี้เป็นแค่ตัวอย่าง ควรตั้งรหัสผ่านที่มีความยาก
net user Administrator P@ssW0rd
หัวข้อ Target selection:
» เลือก ◎ Choose instances manually
» ค้นหา Instances ID ของเรา ?︎ i-*****************
» Check ✅ i-*****************
ที่ Instance ID ของเรา
หัวข้อ Output options:
ให้ Uncheck ☐ Enable an S3 bucket
ออก แล้วเลื่อนลงมาด้านล่างสุด และคลิกปุ่ม Run
เมื่อมาหน้านี้แล้วให้รอสักครู่
กดปุ่ม Refresh
ถ้าขึ้น Success การตั้งค่านี้ก็เสร็จสมบูรณ์
การทดสอบ Login ไปยัง Windows Server
เมื่อเราตั้งค่าทุกอย่างเสร็จหมดแล้ว เราจะมาทดสอบ Login ไปยัง Windows Server โดยใช้รหัสผ่านใหม่ที่เปลี่ยนมาจากขั้นตอนที่แล้ว
เปิดไฟล์ .rdp
ของ EC2 Windows ที่เราเปลี่ยนรหัสเมื่อสักครู่นี้ แล้วป้อนรหัสผ่านใหม่เข้าไป (ตัวอย่างนี้คือ P@ssW0rd
)
เมื่อเข้ามาหน้า Windows Server ได้แล้ว ถือว่าการ Login เสร็จสมบูรณ์
สรุป
ถ้าทำ EC2 Windows Key pair หายไป และลืม Administrator Password ก็จะไม่สามารถ Login เข้าใช้งาน Windows Server ได้ เนื่องจากถ้าไม่มี EC2 Windows Key pair ก็จะไม่สามารถถอดรหัสผ่าน (Decrypt password) ใน EC2 Windows ได้นั่นเอง ผมคิดว่าวิธีการนี้จะช่วยแก้ปัญหาให้กับผู้ใช้งานที่เกิดปัญหาดังกล่าวได้
ผมหวังว่าบทความนี้จะเป็นประโยชน์ให้กับผู้อ่านได้นะครับ
POP จากบริษัท Classmethod (Thailand) ครับ !
Link อ้างอิง
- How do I replace a lost key pair for my EC2 Windows instance when using EC2Config or EC2Launch to reset the administrator password?
- 【สำหรับมือใหม่】การสร้าง Microsoft Windows Server 2022 Base ใน Amazon EC2
- ควรทำอย่างไร? เมื่อทำ Key Pair หายไปจาก EC2 – บทความนี้มีคำตอบ
- AWS Systems Manager (SSM) คืออะไร? การแนะนำฟังก์ชันล่าสุดของ AWS ในปี 2022
- วิธีการรันคำสั่งจาก Management Console โดยไม่ต้องเข้า Windows